package org.cis.jproyinv.comun.modelo;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.Enumerated;
import javax.persistence.EnumType;
import javax.persistence.OneToMany;
import org.cis.jproyinv.proyecto.modelo.DirectorProyecto;

@Entity
public class Docente extends Persona implements Serializable {

    private String tituloAcademico;
    @Enumerated(EnumType.STRING)
    private EstadoLaboral m_EstadoLaboral;
    @OneToMany(mappedBy="Docente",cascade=CascadeType.ALL)
    private List<DirectorProyecto> directores = new ArrayList();

    public Docente() {
    }

    public Docente(String tituloAcademico, EstadoLaboral m_EstadoLaboral, String apellidos, String e_mail, Date fechaNacimiento, String nombres, String numeroDocumentoIdentificacion, TipoDocumentoIdentificacion m_TipoDocumentoIdentificacion, EstadoCivil m_EstadoCivil, TipoGenero m_TipoGenero) {
        super(apellidos, e_mail, fechaNacimiento, nombres, numeroDocumentoIdentificacion, m_TipoDocumentoIdentificacion, m_EstadoCivil, m_TipoGenero);
        this.tituloAcademico = tituloAcademico;
        this.m_EstadoLaboral = m_EstadoLaboral;
    }

    public EstadoLaboral getM_EstadoLaboral() {
        return m_EstadoLaboral;
    }

    public List<DirectorProyecto> getDirectores() {
        return directores;
    }

    public void setDirectores(List<DirectorProyecto> directores) {
        this.directores = directores;
    }

    public void setM_EstadoLaboral(EstadoLaboral m_EstadoLaboral) {
        this.m_EstadoLaboral = m_EstadoLaboral;
    }

    public String getTituloAcademico() {
        return tituloAcademico;
    }

    public void setTituloAcademico(String tituloAcademico) {
        this.tituloAcademico = tituloAcademico;
    }
    
}